package com.wt.springsamples.test.xrender;

import lombok.Data;

import java.util.AbstractList;
import java.util.ArrayList;
import java.util.List;

@Data
public class JobDTO {
    private String id;
    private String name;
    private String number;
    private String orderId;
    private String farmId;
    private String farmName;
    private String nickName;
    private String resourceId;
    private String resourceName;
    private String resourceNickName;
    private String userId;
    private String userName;
    private String accountId;
    private String accountName;
    private String type;
    private List<String> cameras = new ArrayList<>();
    private List<ModelParameter> modelParameters = new ArrayList<>();
    private List<ModelParameter>  allModelParameters = new ArrayList<>();
    private String scenePath;
    private String softwareType;
    private List<String> envVars = new ArrayList<>();
    private String fileCount;
    private String resultRootPath;
    private String split;
    private String keyFramesStrategy;
    private String softwareId;
    private String software;
    private Plugin plugins = new Plugin();
    private String taskId;
    private String taskName;
    private String projectId;
    private String patch;
    private String startAnalysisTime;
    private String endAnalysisTime;
    private String startUploadTime;
    private String endUploadTime;
    private String startTime;
    private String finishTime;
    private String submitTime;
    private String fileSize;
    private String uploadSize;
    private String realSpeed;
    private String feelSpeed;
    private String method;
    private String mode;
    private String ext;
    private Custom custom = new Custom();
    private String content;
    private String parentName;
    private String photon;
    private String onlyRenderPhoton;
    private String overdue;

    @Data
    public static class  ModelParameter{
        List<String> cameras;
        private String frames;//"1-600",
        private String keyFrames;//"1,301,600",
        private String height;
        private String part;
        private String width;
        private String subFrame;
        private String selected;
    }

    @Data
    public  static  class Plugin{
        private String name;
        private String version;
        private String pluginVersionId;
        private String pluginPrice;
    }

    @Data
    public static class Custom{
        private String AI_RENDER_CLIENT;
        private String filePrefix;
        private String melString;
        private String prepare;
        private String rsPostEffects;
    }
}
